Burn audio files to a blank CD from the command line, current directory,
playlist or standard input.

burncd is a POSIX sh script known to work with the following shells:

  ash
  bash
  dash
  loksh
  mksh
  pdksh
  posh (0.14.1 or newer)
  oksh
  yash
  zsh

Additional dependencies:

  cdrecord
  coreutils (cp, ls, mkdir. mv, readlink, rm)
  file

Optional dependencies:

  flac : Used for flac support.
  mpg123 : Used for mp3 support.
  sox : Used for files that are not 16 bit, 44.1 kHz or stereo.

Usage:

  burncd [OPTIONS] [file ...]

  -c, --config,   Path of the configuration files.
  -C, --cdrecord, Path of the cdrecord binary.
  -d, --debug,    Debug output from external programs.
  -e, --exclude,  Exclude audio formats.
  -f, --format,   Choose the audio format.
  -F, --flac,     Path of the flac binary.
  -h, --help,     Show this help message.
  -i, --input,    Path of the default directories.
  -M, --mpg123,   Path of the mpg123 binary.
  -n, --dry-run,  Enable a test run without burning to a CD.
  -N, --no-conf,  Do not load default configuration files.
  -o, --output,   Path of the output directory.
  -p, --playlist, Read audio files from a playlist.
  -S, --sox,      Path of the sox binary.
  -v, --verbose,  Verbose logging.
  -V. --version,  Show the burncd version number.
  -z, --device,   Path of the CD drive.

When 'file' is -, read standard input.

Supported audio formats:

  au, flac, mp3, wav

Environment variables:

  XDG_CONFIG_HOME : XDG base directory.
  XDG_CONFIG_DIRS : List of colon-separated directories.

Configuration files:

  burncd looks for configuration files in the following order:

  1. $XDG_CONFIG_HOME/burncd/burncd.conf
     (Default: $HOME/.config/burncd/burncd.conf)
  2. $HOME/.burncd.conf
  3. $XDG_CONFIG_DIRS/burncd/burncd.conf
     (Default: /etc/xdg/burncd/burncd.conf)
  4. /etc/burncd.conf
  5. ./burncd.conf

To use cdrecord as a normal user:

  # chown root:somegroup "$(command -v cdrecord)"
  # chmod 4710 "$(command -v cdrecord)"

Known issues:

  Not all mp3 files will be detected.
